bitkeeper revision 1.152 (3e7a2f356NlbC64ykB5SR-7x-EFzvw)
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Thu, 20 Mar 2003 21:14:29 +0000 (21:14 +0000)
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Thu, 20 Mar 2003 21:14:29 +0000 (21:14 +0000)
kernel.c:
  Fix Xen printing for domains & CPUs with id >= 10.

xen/common/kernel.c

index 0e4552fe117c2d6648fde17bf63ab01267d46e30..61e65350b17077b0084deeff2cffe26b0c293d7e 100644 (file)
@@ -366,7 +366,7 @@ void printf (const char *fmt, ...)
 void panic(const char *fmt, ...)
 {
     va_list args;
-    char buf[1024], *p;
+    char buf[1024];
     unsigned long flags;
     extern void machine_restart(char *);
     
@@ -377,10 +377,10 @@ void panic(const char *fmt, ...)
     /* Spit out multiline message in one go. */
     spin_lock_irqsave(&console_lock, flags);
     __putstr("\n****************************************\n");
-    p = buf;
-    while ( *p ) putchar(*p++);
+    __putstr(buf);
     __putstr("Aieee! CPU");
-    putchar((char)smp_processor_id() + '0');
+    sprintf(buf, "%d", smp_processor_id());
+    __putstr(buf);
     __putstr(" is toast...\n");
     __putstr("****************************************\n\n");
     __putstr("Reboot in five seconds...\n");
@@ -538,6 +538,7 @@ long do_console_write(char *str, unsigned int count)
 #define SIZEOF_BUF 256
     unsigned char safe_str[SIZEOF_BUF];
     unsigned char exported_str[SIZEOF_BUF];
+    unsigned char dom_id[5];
     unsigned long flags;
     int i=0;
     int j=0;
@@ -551,7 +552,8 @@ long do_console_write(char *str, unsigned int count)
     spin_lock_irqsave(&console_lock, flags);
 
     __putstr("DOM"); 
-    putchar(current->domain+'0'); 
+    sprintf(dom_id, "%d", current->domain);
+    __putstr(dom_id);
     __putstr(": ");
     
     for ( i = 0; i < count; i++ )